/**********************************************************
 * LocationCategories.java.java
 *
 * Created by punam
 * Last modified Date: Sep 9, 2008 1:34:16 PM by punam
 * Revision: <svn revision #>
 * Version : 0.1
 * Copyright (c) 2008 - 2009 cyberThink Infotech Pvt. Ltd., All rights reserved.
 **********************************************************/

package com.printeverywhere.dto;

import java.util.HashSet;
import java.util.Set;

/**
 * LocationCategories entity.
 *
 * @author MyEclipse Persistence Tools
 */

public class LocationCategories implements java.io.Serializable {

	/** The Constant serialVersionUID. */
	private static final long serialVersionUID = 1L;
	// Fields

	/** The category id. */
	private Integer categoryId;

	/** The location categories. */
	private LocationCategories locationCategories;

	/** The category teaser. */
	private boolean categoryTeaser;

	/** The type. */
	private CategoryType categoryType;

	/** The sort order. */
	private Long sortOrder;

	/** The category name. */
	private String categoryName;

	/** The description. */
	private String description;

	/** The level. */
	private Integer level;

	/** The sequence. */
	private Integer sequence;

	/** The main parent id. */
	private Integer mainParentId;

	/** The location categorieses. */
	private Set<LocationCategories> locationCategorieses = new HashSet(0);

	// Constructors

	/**
	 * default constructor.
	 */
	public LocationCategories() {
	}

	/**
	 * @param categoryId
	 * @param categoryName
	 */
	public LocationCategories(Integer categoryId, String categoryName) {
		super();
		this.categoryId = categoryId;
		this.categoryName = categoryName;
	}
	/**
	 * minimal constructor.
	 *
	 * @param categoryid the categoryid
	 */
	public LocationCategories(Integer categoryid) {
		this.categoryId = categoryid;
	}

	/**
	 * full constructor.
	 *
	 * @param categoryid the categoryid
	 * @param locationCategories the location categories
	 * @param categoryteaser the categoryteaser
	 * @param type the type
	 * @param sortorder the sortorder
	 * @param categoryname the categoryname
	 * @param description the description
	 * @param level the level
	 * @param sequence the sequence
	 * @param mainparentid the mainparentid
	 * @param locationCategorieses the location categorieses
	 */
	public LocationCategories(Integer categoryid,
			LocationCategories locationCategories, boolean categoryteaser,
			CategoryType type, Long sortorder, String categoryname,
			String description, Integer level,
			Integer sequence, Integer mainparentid, Set<LocationCategories> locationCategorieses) {
		this.categoryId = categoryid;
		this.locationCategories = locationCategories;
		this.categoryTeaser = categoryteaser;
		this.categoryType = type;
		this.sortOrder = sortorder;
		this.categoryName = categoryname;
		this.description = description;
		this.level = level;
		this.sequence = sequence;
		this.mainParentId = mainparentid;
		this.locationCategorieses = locationCategorieses;
	}

	// Property accessors

	/**
	 * Gets the location categories.
	 *
	 * @return the location categories
	 */
	public LocationCategories getLocationCategories() {
		return this.locationCategories;
	}

	/**
	 * Sets the location categories.
	 *
	 * @param locationCategories the new location categories
	 */
	public void setLocationCategories(LocationCategories locationCategories) {
		this.locationCategories = locationCategories;
	}

	/**
	 * Gets the description.
	 *
	 * @return the description
	 */
	public String getDescription() {
		return this.description;
	}

	/**
	 * Sets the description.
	 *
	 * @param description the new description
	 */
	public void setDescription(String description) {
		this.description = description;
	}

	/**
	 * Gets the level.
	 *
	 * @return the level
	 */
	public Integer getLevel() {
		return this.level;
	}

	/**
	 * Sets the level.
	 *
	 * @param level the new level
	 */
	public void setLevel(Integer level) {
		this.level = level;
	}

	/**
	 * Gets the sequence.
	 *
	 * @return the sequence
	 */
	public Integer getSequence() {
		return this.sequence;
	}

	/**
	 * Sets the sequence.
	 *
	 * @param sequence the new sequence
	 */
	public void setSequence(Integer sequence) {
		this.sequence = sequence;
	}

	/**
	 * Gets the location categorieses.
	 *
	 * @return the location categorieses
	 */
	public Set<LocationCategories> getLocationCategorieses() {
		return this.locationCategorieses;
	}

	/**
	 * Sets the location categorieses.
	 *
	 * @param locationCategorieses the new location categorieses
	 */
	public void setLocationCategorieses(Set<LocationCategories> locationCategorieses) {
		this.locationCategorieses = locationCategorieses;
	}

	/**
	 * Gets the category id.
	 *
	 * @return the category id
	 */
	public Integer getCategoryId() {
		return categoryId;
	}

	/**
	 * Sets the category id.
	 *
	 * @param categoryId the new category id
	 */
	public void setCategoryId(Integer categoryId) {
		this.categoryId = categoryId;
	}

	/**
	 * Checks if is category teaser.
	 *
	 * @return true, if is category teaser
	 */
	public boolean isCategoryTeaser() {
		return categoryTeaser;
	}

	/**
	 * Sets the category teaser.
	 *
	 * @param categoryTeaser the new category teaser
	 */
	public void setCategoryTeaser(boolean categoryTeaser) {
		this.categoryTeaser = categoryTeaser;
	}

	/**
	 * Gets the sort order.
	 *
	 * @return the sort order
	 */
	public Long getSortOrder() {
		return sortOrder;
	}

	/**
	 * Sets the sort order.
	 *
	 * @param sortOrder the new sort order
	 */
	public void setSortOrder(Long sortOrder) {
		this.sortOrder = sortOrder;
	}

	/**
	 * Gets the category name.
	 *
	 * @return the category name
	 */
	public String getCategoryName() {
		return categoryName;
	}

	/**
	 * Sets the category name.
	 *
	 * @param categoryName the new category name
	 */
	public void setCategoryName(String categoryName) {
		this.categoryName = categoryName;
	}

	/**
	 * Gets the main parent id.
	 *
	 * @return the main parent id
	 */
	public Integer getMainParentId() {
		return mainParentId;
	}

	/**
	 * Sets the main parent id.
	 *
	 * @param mainParentId the new main parent id
	 */
	public void setMainParentId(Integer mainParentId) {
		this.mainParentId = mainParentId;
	}

	public CategoryType getCategoryType() {
		return categoryType;
	}

	public void setCategoryType(CategoryType categoryType) {
		this.categoryType = categoryType;
	}
}